<!doctype html>
<html lang=ru id=faq>

<!-- If you make edits to any FAQ documents, please start each sentence
     on a new line, and try to keep the general formatting consistent
     with the rest of the pages -->

<title>OpenBSD FAQ: X Window System</title>
<meta charset=utf-8>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="../openbsd.css">
<link rel="canonical" href="https://www.openbsd.org/faq/faq11.html">

<h2 id=OpenBSD>
<a href="../index.html">
<i>Open</i><b>BSD</b></a>
FAQ - X Window System
<small>
<a href="index.html">[FAQ Index]</a>
</small>
</h2>
<hr>

<ul>
<li><a href="#Intro"        >Введение в X</a>
<li><a href="#ConfigX"      >Конфигурация X</a>
<li><a href="#StartingX"    >Запуск X</a>
<li><a href="#CustomizingX" >Настройка X</a>
</ul>

<hr>

<h2 id="Intro">Введение в X</h2>

Система X Window (иногда просто "X") является средой, предоставляющей
графические службы в OpenBSD и других UNIX-образных системах. Сама по себе X
предоставляет совсем не много – нужен ещё менеджер окон (Window Manager),
представляющий пользователю графический интерфейс.
OpenBSD поставляется в комплекте с такими оконными менеджерами как
<a href="https://man.openbsd.org/cwm">cwm(1)</a>,
<a href="https://man.openbsd.org/fvwm">fvwm(1)</a> и
<a href="https://man.openbsd.org/twm">twm(1)</a>, многие другие доступны
в виде <a href="faq15.html">пакетов</a>.

<p>
Можно запускать X-клиенты на системах, где графика вообще не поддерживается.
Например, приложение (X-клиент) может быть запущено на ARM системе, но
её вывод будет отображаться на графическом дисплее amd64 (X-сервер).
Так как X представляет из себя хорошо продуманный, кросс-платформенный протокол,
возможно даже, что приложение, запущенное, например, на Linux, будет
использовать OpenBSD машину как дисплей.
Клиент и сервер могут также быть запущены и на одной и той же
машине – ниже, в большинстве случаев, предполагается именно это.

<h2 id="ConfigX">Конфигурация X</h2>

На подавляющем большинстве поддерживаемых платформ X вообще не требует
настройки, он просто работает.

<p>
Настройка X может сильно отличаться на разных платформах.


<h2 id="StartingX">Запуск X</h2>

Рекомендуемый способ запуска X - запуск при помощи 
<a href="https://man.openbsd.org/xenodm">xenodm(1)</a> диспрей менеджера.
Он предлагает некоторые важные преимущества в плане безопасности по сравнению
с традиционным запуском при помощи команды
<a href="https://man.openbsd.org/startx">startx(1)</a>.

<p>
Если <a href="https://man.openbsd.org/xenodm">xenodm(1)</a> не была включена
в процессе установки, это можно сделать позже, как и с любым другим системным
демоном:

<pre class="cmdbox">
# <b>rcctl enable xenodm</b>
# <b>rcctl start xenodm</b>
</pre>

На некоторых платформах потребуется отключить консольную
<a href="https://man.openbsd.org/getty">getty(8)</a>.
Этого не требуется на платформах amd64, i386 или macppc.

<h2 id="CustomizingX">Настройка X</h2>

Графическая среда, доступная после установки OpenBSD, полностью готова
к использованию. Тем не менее, вы, возможно, захотите настроить её под себя.
В процессе запуска графической среды можно использовать shell-скрипт из
домашнего каталога пользователя для настройки программ, которые необходимы
при работе.
Большинство из запущенных таким образом программ будут фоновыми процессами,
но последний в этом списке (обычно это и есть window manager) не относится
к их числу.
При закрытии менеджера окон, будет остановлен и скрипт, а сам X вернет 
<a href="https://man.openbsd.org/xenodm">xenodm(1)</a> приглашение входа в
систему.

<p>
После того как пользователь зашел в систему через
<a href="https://man.openbsd.org/xenodm">xenodm(1)</a>,
<code>/etc/X11/xenodm/Xsession</code> скрипт проверяет наличие в системе
<code>$HOME/.xsession</code> скрипта.
В простейшем случае, пользовательский <code>~/.xsession</code> скрипт будет
содержать только одну строку, указывающую на оконный менеджер для запуска.
Тем не менее, он может содержать и некоторые другие дополнительные команды:

<pre class="cmdbox">
export ENV=$HOME/.kshrc
xsetroot -solid grey &
xterm -bg black -fg white +sb &
cwm
</pre>

Обратите внимание, что оконный менеджер
<a href="https://man.openbsd.org/cwm">cwm(1)</a> <i>не запускается</i> в
фоновом режиме. Это означает, что X будет работать до тех пор, пока
пользователь не выйдет из системы, закрыв свое X-окружение.
